#ifndef _SCUDB_MEMORY_H_
#define _SCUDB_MEMORY_H_
#include "sd_global.h"
#include "sd_blist.h"

typedef struct sd_MemoryAllocator
{
	struct sd_Blist allocRecords;
	void* (*allocate)(size_t size);
	void  (*deallocate)(void* p);
}sd_MemoryAllocator;

sd_Ret sd_MemoryInit(void);
sd_Ret sd_MemoryExit(void);
sd_Ret sd_MemoryIsInitialized(void);
sd_Ret sd_MemoryCheck(void);
sd_MemoryAllocator* sd_GetDefaultMemoryAllocator();

void* sd_malloc(size_t size);
void  sd_free(void* p);


#endif

